home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / listings / v_10_03 / 1003074a < prev    next >
Text File  |  1992-01-11  |  709b  |  33 lines

  1.  
  2. Listing 7
  3.  
  4. //
  5. // rational.h
  6. //
  7. #include <stdio.h>
  8.  
  9. class rational
  10.     {
  11. public:
  12.     rational() { }
  13.     rational(long n) : num(n), denom(1) { }
  14.     rational(long n, long d) : num(n), denom(d) { }
  15.     rational &operator+=(rational r);
  16.     rational &operator-=(rational r);
  17.     rational &operator*=(rational r);
  18.     rational &operator/=(rational r);
  19.     rational operator+() { return *this; }
  20.     rational operator-();
  21.     rational operator++() { return *this += 1; }
  22.     rational operator--() { return *this -= 1; }
  23.     rational operator++(int); // postfix ++
  24.     rational operator--(int); // postfix --
  25.     void put(FILE *);
  26. private:
  27.     long num, denom;
  28.     void simplify();
  29.     };
  30.  
  31. // ... the rest of rational.h as in Listing 5
  32.  
  33.